iT邦幫忙

2024 iThome 鐵人賽

DAY 19
0
佛心分享-IT 人自學之術

從零開始的MySQL開發旅程系列 第 19

Day19 Firebase Realtime Database

  • 分享至 

  • xImage
  •  

第二個要介紹的功能為Realtime Database,是 Google 的雲端資料庫並且提供監聽更新機制的SDK,是許多APP開發者使用firebase的一個重要的原因。為一個雲端 NoSQL 資料庫,以 JSON 格式儲存資料,所以存取時不適用SQL指令,也沒有固定欄位的設定,因為這樣在後續做擴充、修改時可以不用針對資料庫做設定。
提到Realtime Database,就會想到Firebase的另一資料庫Cloud Firestore,前者較早開發出來,簡單又方便,而後者結構上較大較複雜,相對來說它的擴展性、延伸性會比較好。雖說兩種資料庫功能大致類似,可以同時使用但用法、資料內容都沒辦法互通。後面的章節會再仔細提到Cloud Firestore,今天會先著重在Realtime Database!

補充:JSON是一種輕量級的資料交換語言,特點是該語言用任容易閱讀的文字為基礎而且容易編寫,用來傳輸屬性質或序列值的資料物件。JSON是由物件Object和陣列Array組成。

  • 物件Object是由大括號 {} 包圍的鍵值對組成。名稱和值間放冒號,每一組鍵值間放逗號做區隔
  • 陣列Array 由方括號 [] 包圍的有序值列表。數組中的每個值之間用逗號分隔。
  • 主要功能
    • 實時同步,除了可以存取資料外,其SDK功能包含監聽等功能,所以每次啟用應用的同時,只要資料庫有更新,就很方便即時同步到本機上,且用戶端會即時接收到通知,同步更新,不用特地在後台設定其他程式功能。這可以用在討論區、即時通訊等等。此外不只支援 APP,也支援 JavaScript 同步到網頁或其他應用平台上。
    • 離線功能,也就是說在網路不穩的情況下在社群中聊天等,能先緩存數據待網路恢復後仍會自動同步回資料庫,確保資料一致性
    • 安全性,firebase可以精準的讓每一使用者只看到自己的資料,不會看到其他人的或是任何不應該看到的
    • 跨平台支持,可以輕鬆整合到不同的應用程式,如 Web、iOS 和 Android 應用,並使用同一個資料庫進行同
    • 資料庫結構, JSON 的樹狀結構,所以適用鍵值隊的形式做儲存,也就更適合層級結構的數據
  • 使用場景
    • 聊天應用:在多個使用者之間即時共享訊息。
    • 共用工具:如即時編輯的文件或共用平台。
    • 遊戲應用:實時共享遊戲狀態或排行榜。
    • IoT 應用:即時收集和同步物聯網設備的數據
      注意!! 因為這是NoSQL,沒有固定的Table結構,所以說如果沒有好好做管理或是沒有更新到正確的版本的話可能會出現不正確、錯誤、格是錯誤的欄位等等問題發生。同時也要記得加上權限設定以免被有心人利用!

Realtime Database的簡單介紹就先到這裡!

下一章:Realtime Database 基礎用法


上一篇
Day18 Firebase Authentication用戶驗證
下一篇
Day20 Realtime Database 基礎用法
系列文
從零開始的MySQL開發旅程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言